#include "Hashtable.h"

using namespace Su;


void Func1()
{
	HashTable<int, string> test;
	test.insert(make_pair(1, "111"));
	test.insert(make_pair(3, "111"));
	test.insert(make_pair(13, "111"));
	test.insert(make_pair(14, "111"));
	test.insert(make_pair(24, "111"));
	test.insert(make_pair(23, "111"));
	test.insert(make_pair(11, "111"));
	test.insert(make_pair(53	, "111"));
	test.insert(make_pair(32, "111"));
	test.insert(make_pair(54, "111"));
	test.print();
	test.insert(make_pair(22, "111"));
	test.insert(make_pair(12, "111"));
	test.print();

	pair<int, string>* ptr;
	ptr = test.find(12);

	test.erase(11);
	test.erase(23);
	test.print();
	test.erase(53);
	test.print();

	//如果ptr是pair的指针，就用->去获得first和second
	cout << ptr->first << " : " << ptr->second << endl;
}
void Func2()
{
	HashTable<string, string> test;
	test.insert(make_pair("AAA", "1"));
	test.insert(make_pair("AAA", "1"));
	test.insert(make_pair("AAA", "1"));
	test.insert(make_pair("AAA", "1"));
	test.insert(make_pair("abc", "1"));
	test.insert(make_pair("acb", "1"));
	test.insert(make_pair("cba", "1"));
	test.print();

}
int main()
{
	//Func1();
	Func2();
	return 0;
}